<?php 
/**
* admin 班级管理，包括专业，班级，逻辑班
*/
class Admin_class extends CI_Controller
{
    
    function __construct()
    {
        parent::__construct();
        //登陆状态检测
        if(!$this->session->userdata('r_user_in'))
            redirect('home');
        //权限检测
        if($this->session->userdata('r_role_id') != 1)
            redirect('home');
    }

    /**
     * 添加一个课程
     */
    function big_lecture_add()
    {
        //表单验证
        if($this->form_validation->run('admin_class/add_big_lecture'))
        {
            //post方法
            //读取数据
            $big_lecture_name=$this->input->post('big_lecture_name');
            //检查如果这个课程名称已经存在，则提醒
            // if($this->lecture_model->check_lecture_name_exist($class_name))
            // {
            //  $this->session->set_flashdata('message','这个班级已存在，添加失败');
            //  redirect('admin_class/class_add');
            // }

            //将模块写入数据库
            $item = array(
                'name' => $big_lecture_name
                 );
            $this->load->model('big_lecture_model');

            if($this->big_lecture_model->add($item))
            {
                $this->session->set_flashdata('message','操作成功');
                redirect('admin_home/index');       
            }
            $this->session->set_flashdata('message','操作失败');
            redirect('admin_class/big_lecture_add');
                        
        }

        //get方法
        $data['title']='添加课程';
        $this->load->view('admin_class/big_lecture_add',$data);
    }
    /**
     * 编辑一个课程
     * @param  [type] $id [description]
     * @return [type]     [description]
     */
    function big_lecture_edit($id=0)
    {
        if($id)
        {
            //get方法
            $this->load->model('big_lecture_model');
            $big_lecture=$this->big_lecture_model->get_by_id($id);
            if(!$big_lecture)
                return $this->load->view('error');
            $data['title']='编辑课程信息';
            $data['big_lecture']=$big_lecture;

            
            $this->load->view('admin_class/big_lecture_edit',$data);
        }
        else
        {
            //post
            //读取数据
            $this->load->model('big_lecture_model');

            $id=$this->input->post('big_lecture_id');
            $big_lecture=$this->big_lecture_model->get_by_id($id);
            if(!$big_lecture)
                return $this->load->view('error');
            if($this->form_validation->run('admin_class/big_lecture_edit'))
            {
                //post方法
                $name=$this->input->post('big_lecture_name');

                //将内容写入数据库
                $item = array(
                    'name' => $name
                     );
                
                //数据库操作
                if($this->big_lecture_model->update($id,$item))
                {
                    $this->session->set_flashdata('message','操作成功');
                    redirect('admin_home/index');   
                }
                else
                {
                    $this->session->set_flashdata('message','操作失败');
                    redirect('admin_home/index');   
                }
            }
            else
            {
                //验证失败
                //get方法
                $data['title']='编辑班级信息';
                $data['class']=$class;
                $this->load->view('admin_class/class_edit',$data);
            }
        }        
    }
    /**
     * 删除一个课程
     * @param  [type] $id [description]
     * @return [type]     [description]
     */
    function big_lecture_delete($id)
    {
        $this->load->model('big_lecture_model');
        $this->load->model('module_model');
        if(!$this->big_lecture_model->get_by_id($id))
            return $this->load->view('error');
        //删除课程下的所有模块
        $modules_list_by_big_lecture = $this->module_model->get_modules_by_big_lecture_id($id);
        foreach ($modules_list_by_big_lecture as $module) {
            $this->module_model->delete($module['id']);
        }
        if($this->big_lecture_model->delete($id))
            $this->session->set_flashdata('message','操作成功');
        else
            $this->session->set_flashdata('message','存在相关引用，操作失败');

        redirect('admin_home/index');

    }
}